home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / gnu / gdb / gdb_18s.zoo / README < prev    next >
Text File  |  1992-04-27  |  13KB  |  353 lines

  1. GDB @ Patchlevel 18
  2.  
  3.     - many of you had difficulty with finding gdb @Patchlevel 16
  4.     to patch to PL 17 with the last set of diffs. I apologize for
  5.     this. gdb@pl 17 is now available on atari.archive.umich.edu
  6.     for you to apply the 17->18 diffs.
  7.  
  8.     - many small bug fixes.
  9.  
  10.     - gdb -L is not working reliably. i still have'nt tracked this down.
  11.     But other than that gdb is doing quite well.
  12.  
  13. GDB @ Patchlevel 17
  14.     - gdb -L (logging) now always works independent of TOS etc.
  15.  
  16. GDB @ Patchlevel 16
  17.     - andreas sent a more reliable way to intut -mshort.
  18.  
  19.     - gdb will not bomb out when it tries to access some unitialized
  20.     vars in the child. thanks again to andreas.
  21.  
  22.     - gdb will sometimes bomb out when you have a syntax error in
  23.     the gdb command that you enter. i will fix this at a future
  24.     time. the fixes are easy but tedious. in the mean while
  25.     avoid syntax errors in gdb commands :-)
  26.  
  27.     - also planned for the next version a more tos version independent
  28.     way of logging.
  29.  
  30.     - some of you have asked about screen flipping
  31.     and logging the debugees (the program being debugged) output. i
  32.     personaly dont plan to do this, but you should feel free to
  33.     put in those features.
  34.  
  35.     - note: gdb-atartST still cannot handle g++'s output.
  36.  
  37. GDB @ Patchlevel 15   
  38.  
  39. ================NOTE      NOTE      NOTE    NOTE============================
  40.  
  41.          TOS 1.4 or better required unless you
  42.              recompile the source with -DOLDTOS
  43.  
  44. ================NOTE      NOTE      NOTE    NOTE============================
  45.  
  46.     *************************************************
  47.        Please get rid of gdb Patchlevel 14 or older
  48.     *************************************************
  49.  
  50.     yet another significant update to gdb-atariST. please take
  51.     a few moments to read over gdb.texinfo too (ie: dont expect
  52.     to find all the answers in this README file :-).
  53.  
  54.     - gdb now has a new option to log a gdb session. gdb -L will
  55.     log the session in the file gdb.log (append if the file already
  56.     exists). Use this option WITH EXTREME CAUTION. This only works
  57.     with TOS 1.4. I have a later version of TOS and it does not
  58.     work correctly with it, and it goes and adds stuff to random
  59.     files. I dont know if -L will work with the TOS in STe's or TT's.
  60.     you have been adequately warned.!!
  61.  
  62.     - gdb will NOT try to intut when it is trying to debug a -mshort
  63.     compiled program. The user must specify the "-mshort" option to
  64.     gdb.ttp if you are going to try and debug a -mshort compiled
  65.     application. the heauristic we were using earlier to intut -mshort
  66.     did not work very well, and caused many problems. So the sequence
  67.     for a typical -mshort compile/debug becomes:
  68.  
  69.         gcc -mshort -c -g foo.c bar.c
  70.         gcc -mshort -o foo foo.o bar.o
  71.             sym-ld -o foo.sym e:\lib\crt0.o foo.o bar.o -lgnu16
  72.         gdb -mshort -e foo -s foo.sym
  73.  
  74.     - gdb wont get confused when -mshort is used, and the arguements
  75.     to a function are displayed (on a breakpoint, backtrace etc).
  76.     the arguements were always being passed correctly, but were not
  77.     being displayed correcty.
  78.  
  79.     - gdb wont get confused by certain typedefs.
  80.  
  81.     - Frames fixed. up/down etc should work.
  82.  
  83.     - will not allow you to re-run inferior (even if the
  84.     inferior has exited). this is not possible to do under TOS.
  85.  
  86.     - NEEDS tos 1.4 or better and uses Pexec mode 6 to launch
  87.           inferior.
  88.  
  89.     - many people are confused about this: to pass command line
  90.     arguements to the program to be debugged  you have to either
  91.         set-args args ...
  92.        BEFORE you issue the initial run command
  93.     or you can specify the args in the initial run command
  94.         run args ...
  95.     the run args... form is more convenient.
  96.  
  97.     - got rid of the initialization hacks, now all the init
  98.     functions are called from init.c (which in turn in called
  99.     from main). now we can compile gdb with -O etc.
  100.  
  101.     - other code reorgs and hacks.
  102.  
  103.     - much thanks to Michal Jaegermann who provided lots of
  104.     suggestions examples  and suffered thru many intermmediate
  105.     versions.
  106.  
  107. GDB @ Patchlevel 14
  108.  
  109.     *************************************************
  110.        Please get rid of gdb Patchlevel 12 or older
  111.     *************************************************
  112.  
  113.     here is a major update to gdb. i have fix lots of stuff, and
  114.     put together a preliminary doc (which is almost accrate).
  115.     
  116.     - massive overhauling of most parts of the code. literally
  117.     dozens of bug fixes. i feel it is beta quality code now.
  118.     it is very usable.
  119.  
  120.     - gcc -mshort compiled objects should work pretty much
  121.     now. gdb tries to intut when its reading in the object
  122.     if it was -mshort compiled. a new command "gcc-mshort"
  123.     is available in gdb that will communicate the fact to
  124.     gdb in case it can fails to figure it out.
  125.  
  126.     - new additions: "until" and "disassemble" commands. see
  127.     gdb.texinfo for details.
  128.  
  129.     - things to take note of:
  130.  
  131.        - if you include <osbind.h> or <linea.h>, then compile
  132.     your program with -D__NO_INLINE__. gdb cannot handle inlined
  133.     asm code gracefully, as it is not expecting exceptional conditions
  134.     at the point. So if you try to (s)tep or (n)ext over an
  135.     asm inlined piece of code, gdb will be confused. Note that
  136.     as long as you are not going to (s)tep or (n)ext over them, inlined
  137.     asm segments are fine, and will not confuse gdb. Also note that
  138.     inlined C code is just fine. (so you dont need __NO_INLINE__
  139.     for <stdio.h> etc).
  140.  
  141.     - calling a C function from a gdb command (like in the command
  142.      "print foo(x)") is not reliable. The printed value is always
  143.     incorrect (always 0). The arguements are not pushed reliably
  144.     when you are debugging a -mshort object (in some situations
  145.     they are, in some they are not). Sometimes (most times!) gdb will
  146.     get totally confused after return from a function called from a
  147.     gdb command expression. so avoid doing this right now. i am
  148.     working on this.
  149.  
  150.     please send feedback.
  151.  
  152.     ++jrb @Patchlevel 14 9/21/91
  153.     
  154. -----------------------------------------------------------------------------`
  155.  
  156.     *************************************************
  157.        Please get rid of gdb Patchlevel 10 or older
  158.     *************************************************
  159.  
  160.     Major problems fixed after previous distribution (Patchlevel 8):
  161.  
  162.     - doing a next over a library function call no longer confuses
  163.     gdb.
  164.  
  165.     - gdb does'nt do strange things when the debugee exits. doing
  166.     a run without any bkpt's set now will not freeze up 
  167.     (some) machines.
  168.  
  169.     - gdb now relocates everything it needs to.
  170.  
  171.     Known problems in Patchlevel 12:
  172.  
  173.     - it still gets confused about the current frame and/or the up frame
  174.     once in while (but not so often, its very usable now).
  175.  
  176.     - if you try to do gdb commands before you do the initial run
  177.     it will complain (or in some circumstances even successfully do
  178.     the command), but later it will be very confused and act strangely.
  179.     the solution of course is to ALWAYS do run first, and then issue
  180.     command (the only command that you should do before the inital
  181.     run, is set-args if needed)
  182.  
  183.     - it does not work so hot with -mshort compiled binaries. for
  184.     debugging purposes dont use -mshort for now. actually, i dont
  185.     see why this is a concern at all!
  186.  
  187.     - it still need symld -- no big deal of course.
  188.  
  189. here is the real README:
  190.  
  191. Here is a heavily hacked  gdb for atariST, based on the incredible work
  192. of John Dunning of porting it to the ST.
  193.  
  194. The big difference is that this version supports dbx_format symbols and
  195. stabs, not the gnu format (ie: "gcc -g" and not "gcc -gg"). gnu has
  196. essentially dropped support for the -gg format. Other than that, it is
  197. still undergoing development, to make it as stable, and to bring it up
  198. to the changes in the latest rev of gdb from FSF. It is quite usable,
  199. and a lot of you have been waiting for "something" so i am sending it
  200. out for you to play with. I will provide updates (hopefully in a timely
  201. fashion :-).
  202.  
  203. PREREQUISITES:
  204.   before you can use this version of GDB you have to ensure that you have:
  205.  
  206.     - gcc V1.39 (.0 or better)
  207.     - gas V1.38 (i think 1.36 will work, but i never tested it)
  208.     - library Patchlevel 66
  209.       (only needed if you want o recompile gdb)
  210.     - include files V66
  211.       (i do not guarantee anything with any older version of the
  212.        include files, you must assure that you have a <stdio.h>
  213.        in which getc() is a macro and not an inline function when
  214.        !__NO_INLINE__. It will work correctly, b